package com.liduanwei.springboot.service.impl;


import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.jinrustar.op.core.util.InstanceUtil;
import com.liduanwei.springboot.entity.UsNewestVersionConfig;
import com.liduanwei.springboot.mapper.UsNewestVersionConfigMapper;
import com.liduanwei.springboot.service.IUsNewestVersionConfigService;
import org.springframework.stereotype.Service;

import java.util.Map;

/**
 * <p>
 * 歌曲  服务实现类
 * </p>
 *
 * @author LiDuanWei
 * @since 2017-09-29
 */
@Service
public class UsNewestVersionConfigServiceImpl extends ServiceImpl<UsNewestVersionConfigMapper, UsNewestVersionConfig> implements IUsNewestVersionConfigService {


    @Override
    public Page<UsNewestVersionConfig> queryAll(Map params) {
        int pageNum = Integer.parseInt(params.getOrDefault("pageNum", "1").toString());
        int pageSize = Integer.parseInt(params.getOrDefault("pageSize", "10").toString());
        Page page = new Page<UsNewestVersionConfig>(pageNum, pageSize);
        page.setRecords(baseMapper.selectList(page, params));
        return page;
    }


    @Override
    public boolean insertOrUpdateWithDefaultValue(UsNewestVersionConfig newestVersionConfig) {
        ServiceUtil.fillDefaultValue(newestVersionConfig);
        return insertOrUpdate(newestVersionConfig);
    }

    @Override
    public UsNewestVersionConfig findByMachineId(String machineId) {
        Map queryParams = InstanceUtil.newHashMap("machineId", machineId);
        queryParams.put("pageSize", "1");

        Page<UsNewestVersionConfig> newestVersionConfigPage = queryAll(queryParams);
        return newestVersionConfigPage.getTotal() != 0 ? newestVersionConfigPage.getRecords().get(0) : null;
    }

}
